package com.at.bigdata.spark.core.rdd.builder

import org.apache.spark.{SparkConf, SparkContext}

/**
 *
 * @author cdhuangchao3
 * @date 2023/3/19 9:52 PM
 */
object Spark02_RDD_File_Par1 {

  def main(args: Array[String]): Unit = {
    // 环境准备
    val sparkConf = new SparkConf().setMaster("local[*]").setAppName("RDD")
    val sc = new SparkContext(sparkConf)

    // 创建RDD
    // 数据分区分配
    // 1. 数据以行为单位进行读取
    //    Spark读取文件，采用的是Hadoop的方式读取，和字节数无关
    // 2. 数据读取时，以偏移量为单位，偏移量不会被重复读取
    // 3. 数据分区的偏移量范围的计算
    //    0 => [0, 3] => 1 2
    //    1 => [3, 6] => 3
    //    2 => [6, 7] =>
    val rdd = sc.textFile("datas/3.txt", 2)

    rdd.saveAsTextFile("output")

    sc.stop()
  }

}
